$(function(){

/*（正则表达式网址：https://www.cnblogs.com/wanqi007/p/6587510.html）*/
// 用js正则表达式 判断手机号码是否正确
    var reg = /^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/;

// 一、Tab选择切换事件：
$("li").click(function(){

    $(this).addClass("on").siblings().removeClass("on");

    // 登陆和注册两个表格显示与隐藏（html中需要添加属性： data-type="表格id名字" 才会生效）
    var type = $(this).data("type");
    $("#"+type).show().siblings("table").hide();
});


//  二、登陆表单——登陆事件：
    // （1）、定义全局变量：
    var Login = $("#Login");
    // （2）、用js正则表达式 判断手机号码是否正确，已写在共用全局变量里面了。
    // （3）、判断手机号码输入是否正确，获取验证码：
Login.click(function(){
    var Tel =$(".Tel").val();       // 获取输入的手机号码
    var Psw = $(".psw").val();      // 获取输入的密码

    if(Tel!==""){                   // 判断手机号码是否填写
        if(reg.test(Tel)){          // 判断手机号码是否正确
            if(Psw!==""){           // 判断密码是否填写
                // 读取存在本地（localStorage）的手机号和密码，并与输入的手机号码和密码进行校验看看是否匹配
                var locTel = localStorage.getItem("mobile");      //读取localStorage.setItem中"mobile"的值
                var locPsw = localStorage.getItem("password");    //读取localStorage.setItem中"password"的值
                if(locTel === Tel && locPsw === Psw){
                    alert("登陆成功！");
                }else{
                    alert("手机号码或密码有错！");
                }
            }else{
                alert("请输入密码！");
            }
        }else{
            alert("手机号码有错，请重新输入！");
        }
    }else{
        alert("请输入手机号码！");
    }
});


//  三、注册表单——“获取验证码”按钮点击事件：
    // （1）、定义全局变量：
    var num = 60;   //时间从60s开始倒计时的，所以是60
    var timer = null;   //刚开始倒计时没用到，所以先设定为空对象，后面用到时候再给它赋值
    var Getcode = $("#Get-code");

    // （2）、用js正则表达式 判断手机号码是否正确，已写在共用全局变量里面了。
    // （3）、判断手机号码输入是否正确，获取验证码：
Getcode.click(function(){
    var TelLogin= $(".TelLogin").val();   // 读取输入的手机号码
    if(reg.test(TelLogin)){
        //alert("正确");
        djs();
    }else{
        alert("手机号码有错，请重新输入！");
    }
});

function djs(){
    if (num <= 1) {
        clearTimeout(timer);                // 倒计时停止
        Getcode.attr("disabled",false);    // button设置属性，获取验证码按钮解除禁用，最后d不能漏
        Getcode.text("获取验证码");         //  button设置值
        num = 60;  //  时间初始化为60s
    } else {
        num--;     //  递减 倒计时
        Getcode.attr("disabled",true);          // button设置属性，让获取验证码按钮禁用，最后d不能漏
        Getcode.text("重新获取 " + num + "s");  //  button设置值

        timer = setTimeout(function () {       // 给timer赋值
            djs();     //  重新执行djs函数，循环
        }, 1000);      //  1000毫秒=1S，每秒递减1
    }
}


// 四、注册表单——“确认注册”按钮点击事件：
$("#Login-now").click(function(){
    // （1）、定义全局变量：
    var TelLogin = $(".TelLogin").val();     // 获取手机号码
    var code = $("#code").val();             // 获取验证码
    var Psw1 = $(".psw1").val();             // 获取密码
    var S_Psw = $(".sure-psw").val();        // 获取确认密码

    // （2）、用js正则表达式 判断密码是否是由数字和26个英文字母组成的字符串。
    var reg_psw = /^[A-Za-z0-9]+$/;

    // （3）、开始校验：
    if(TelLogin!==""){
        if(reg.test(TelLogin)){               // 校验手机号码，如果不对就执行else操作
            if(code.length === 6){            // 校验验证码（验证码必须是6位数）
                if(reg_psw.test(Psw1)){       // 校验密码是否符合要求
                    if(Psw1 === S_Psw){       // 校验确认密码是否和密码一致
                        alert("注册成功！");
                        localStorage.setItem("mobile",TelLogin);     // 把手机号码存到localStorage中
                        localStorage.setItem("password",Psw1);       // 把注册密码存到localStorage中

                        $("#ZhuCe input").val("");              // 注册成功后清空input输入的注册信息
                    }else{
                        alert("两次输入的密码不一致！");
                    }
                }else{
                    alert("密码格式不正确，请重新输入！");
                }
            }else{
                alert("验证码有错，请重新输入！");
            }
        }else{
            alert("手机号码有错，请重新输入！");
        }
    }else{
        alert("请填写注册信息！");
    }
});


//  五、注册表单——“已有账号，去登陆”按钮点击事件：
$("#Register-now").click(function(){
   $("ul>li:nth-child(1)").addClass("on").next().removeClass("on");  //登陆li添加on属性，注册去掉on属性
   $(this).parents("table").hide().prev().show();  //通过按钮—注册table—让自己所在的表单隐藏，前面表单显示
});




});
